package proyecto.web;

import java.util.HashMap;
import java.util.Map;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.multiaction.MultiActionController;

import proyecto.excepcion.DAOExcepcion;
import proyecto.modelo.Usuario;
import proyecto.service.UsuarioService;

public class LoginController extends MultiActionController {

    private UsuarioService usuarioService;
    
    public UsuarioService getUsuarioService() {
		return usuarioService;
	}

	public void setUsuarioService(UsuarioService usuarioService) {
		this.usuarioService = usuarioService;
	}

	public ModelAndView index(HttpServletRequest request, HttpServletResponse response) {
        return new ModelAndView("index");
    }

	public ModelAndView home(HttpServletRequest request, HttpServletResponse response) {
        return new ModelAndView("home");
    }

    public ModelAndView login(HttpServletRequest request, HttpServletResponse response) {
    	String usuario = request.getParameter("txtUser");
    	String clave = request.getParameter("txtPWD");
    	
    	String mensaje="";
    	
    	try {
			Usuario beanUsuario = usuarioService.validar(usuario, clave);
			if(beanUsuario==null){
				request.getSession().setAttribute("SESSION_USUARIO", beanUsuario);
				mensaje="Usuario y/o clave incorrecto";
			}
		} catch (DAOExcepcion e) {
			e.printStackTrace();
			mensaje="Error interno (" + e.getMessage() + ")";
		}
    	Map<String, String> params = new HashMap<String, String>();
    	params.put("mensaje", mensaje);
        return new ModelAndView("index",params);
    }
}
